#ifndef TOWER_H_
#define TOWER_H_

#include <iostream>
#include <list>
#include <iterator>
#include <vector>
using namespace std;

#include "Element.h"
#include "Simulator.h"

class Tower : public Element
{
public:
    Tower(int posX, int posY) : Element(posX, posY)
    {
        this->parent = parent;
    };

    void recieveDamage(int damage) {};
    
    void die() {};
    
    void spawn() 
    {
        //look around, ey, nobody here... so I'll set a region of interest
        spanRegionOfInterest(3);
    };

    void onContact(Element * other)
    {
        parent->onContact(other);
    };
    
    // voorbeeld, later verwijderd
    void spanRegionOfInterest(int size);
    
    unsigned int life;
    
    Element * parent;
};

#endif /*TOWER_H_*/

